// 函数的声明
// 1.main就是函数名
// 2.()形参的位置，用于接收参数
// 3.{}代码体存放的位置，要执行的代码写里面
void main() {
  // 1.声明函数（局部函数，必须先声明后调用）
  // myFn(){
  //    print('这是一个局部函数');
  // }
  // 2.调用函数
  // 3.函数参数：形参和实参个数必须匹配
  myFn('参数测试', 19);
  myFn('参数测试', '张三', 19);

  var res = myFunction(10, 20);
  print(res);
}

// 声明函数并不会执行
myFn(param, [uname = '李四', age = 18]) {
  print('这是一个全局函数,参数1$param,参数2:$uname,参数3::$age');
}

// 4.函数参数和返回值的类型
// 没有返回值的时候可以使用void
num myFunction(num num1, num num2) {
  return num1 + num2;
}
// 总结：
// 1.参数的类型声明
// 2.动态参数
// 3.参数的默认值
// 4.函数的返回值


